﻿using System;
using System.Windows.Forms;

namespace Oxage.Midi
{
	/// <summary>
	/// Implements a configuration panel for a connector.
	/// </summary>
	public interface IConfigPanel
	{
		/// <summary>
		/// When implemented restores the state of the specified profile.
		/// </summary>
		/// <param name="profile"></param>
		void SetProfile(Profile profile);

		/// <summary>
		/// When implemented get the currently set profile state.
		/// </summary>
		/// <returns></returns>
		Profile GetProfile();

		/// <summary>
		/// When implemented returns an interactive graphical interface.
		/// </summary>
		/// <returns></returns>
		UserControl GetUserControl();
	}
}
